<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Document</title>
    <script>
      /**
       * JSON
       *   -js中的对象只有JS认识，其他的语言都不认识
       *   -JSON是一个特殊格式的字符串，这个字符串可以被任何语言所识别
       *     可以转换为任意语言中的对象，JSON在开发中主要用来数据的交互
       *   -JSON
       *       -JavaScript Object Notation JS对象表示法
       *       -JSON和JS对象格式一样，JSON字符串中的属性名必须加双引号
       *          其他和JS语法一致
       *        JSON分类
       *             1.对象{}
       *             2.数组[]
       *
       *        JSON中允许的值：
       *            1.字符串
       *            2.数值
       *            3.布尔值
       *            4.null
       *            5.对象
       *            6.数组
       */
      var obj = '{"name":"孙悟空","age":18,"gender":"男"}';
      var arr = '[1,2,3,"hello",ture]';

      /**
       * 将JSON字符串转换为JS中的对象
       *  在JS，提供了工具-JSON
       * 这个对象可以将JSON转换为JS对象，也可以将JS转换为JSON
       */
      var json =
        '{"name":"孙悟空","age":18,"gender":"男","name":"孙悟空","age":18,"gender":"男"}';
      /**
       * jiso -- js对象
       *      JSON.parse()
       *         -可以将JSON字符串转换为js对象
       *
       */
      var o = JSON.parse(json);
      var o2 = JSON.parse(arr);
      //   console.log(o.gender);
      //   console.log(o2[1]);

      /**
       * JS对象--JSON
       *   JSON.stringify()
       *          -可以将一个JS对象转换为JSON字符串
       *          -需要一个js对象作为参数，会返回一个JSON字符串
       */
      var obj3 = { name: "猪八戒", age: 28, gender: "男" };
      var str = JSON.stringify(obj3);
      console.log(str);
    </script>
  </head>
  <body></body>
</html>
